#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include <QSerialPort>
#include <QSerialPortInfo>
#include <QMessageBox>
#include <QTextCodec>

typedef  struct Data
{
    int temp;
    int humi;
    int people;
    int engine;
    int light_strong;
}Data;

QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE

class Setting : public QWidget
{
    Q_OBJECT

public:
    Setting(QWidget *parent = nullptr);
    ~Setting();
    // 静态方法来获取 SerialPort 指针
    QSerialPort* getSerialPort();
    void Log_Text_Display(QString text);
    void init();//初始化

public:
    void switchButton_R(bool checked);
    void switchButton_G(bool checked);
    void switchButton_B(bool checked);
    void switchButton_BEEP(bool checked);
    void switchButton_P(bool checked);
    void switchButton_E(bool checked);

private slots:
    void on_btn_open_clicked();     //打开串口

    void on_btn_close_clicked();    //关闭串口

    void on_btn_reflesh_clicked();  //更新串口

    void on_btn_send_clicked();     //发送消息

    void on_btn_receive_clicked();  //清除文本框消息

    void messlot();                 //消息接收槽函数


    void on_btn_setting_clicked();

    void on_btn_back_clicked();

    void renewTimer();

    void on_btn_reflash_clicked();

private:
    Ui::Widget *ui;

    QSerialPort *SerialPort;
    Data data;
};
#endif // WIDGET_H
